<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>57 ES9正则扩展：dotAll 模式</title>
</head>

<body>
    <script>
        // 正则扩展：dotAll 模式
        // dot就是. 元字符，表示除换行符之外的任意单个字符
        let str = `
        <ul>
            <li>
                <a>肖生克的救赎</a>
                <p>上映日期: 1994-09-10</p>
            </li>
            <li>
                <a>阿甘正传</a>
                <p>上映日期: 1994-07-06</p>
            </li>
        </ul>`;
        // 需求：我们想要将其中的电影名称和对应上映时间提取出来，存到对象
        // 之前的写法
        // const reg = /<li>\s+<a>(.*?)<\/a>\s+<p>(.*?)<\/p>/;
        // dotAll 模式
        const reg = /<li>.*?<a>(.*?)<\/a>.*?<p>(.*?)<\/p>/gs;
        // const result = reg.exec(str);
        // console.log(result);
        let result;
        let data = [];
        while (result = reg.exec(str)) {
            console.log(result);
            data.push({ title: result[1], time: result[2] });
        }
        console.log(data);
    </script>
</body>

</html>